package services.specific;


import base.response.OffsetLimitPage;
import wt.entity.specific.ExtractExpert;

import java.util.Date;
import java.util.List;


/**
 * Created by Administrator on 2017/9/13.
 */
public interface ExtractExpertServices {



    /**
     * 手动抽取专家信息
     * @param name
     * @param outLander
     * @param gradeList
     * @param majorNumList
     * @param itemId
     * @param affiliateCompany
     * @param startTime
     * @param endTime
     * @return
     * @throws Exception
     */
    List<ExtractExpert> selectManuallyExtractExpert(String name,
                                                    Short outLander,
                                                    List<String> gradeList,
                                                    List<String> majorNumList,
                                                    String itemId,
                                                    String affiliateCompany,
                                                    Date startTime,
                                                    Date endTime
    ) throws Exception;


    /**
     * 手动抽取专家信息
     * @param name
     * @param outLander
     * @param gradeList
     * @param majorNumList
     * @param itemId
     * @param affiliateCompany
     * @param startTime
     * @param endTime
     * @param offset
     * @param limit
     * @return
     * @throws Exception
     */
    OffsetLimitPage selectManuallyExtractExpert(String name,
                                                Short outLander,
                                                List<String> gradeList,
                                                List<String> majorNumList,
                                                String itemId,
                                                String affiliateCompany,
                                                Date startTime,
                                                Date endTime,
                                                Integer offset,
                                                Integer limit
    ) throws Exception;



    /**
     * 自动动抽取专家信息
     * @param name
     * @param outLander
     * @param gradeList
     * @param majorNumList
     * @param itemId
     * @param affiliateCompany
     * @param startTime
     * @param endTime
     * @return
     * @throws Exception
     */
    List<ExtractExpert> selectAutomaticExtractExpert(String name,
                                                     Short outLander,
                                                     List<String> gradeList,
                                                     List<String> majorNumList,
                                                     String itemId,
                                                     String affiliateCompany,
                                                     Date startTime,
                                                     Date endTime
    ) throws Exception;


    /**
     * 自动动抽取专家信息
     * @param name
     * @param outLander
     * @param gradeList
     * @param majorNumList
     * @param itemId
     * @param affiliateCompany
     * @param startTime
     * @param endTime
     * @param offset
     * @param limit
     * @return
     * @throws Exception
     */
    OffsetLimitPage selectAutomaticExtractExpert(String name,
                                                 Short outLander,
                                                 List<String> gradeList,
                                                 List<String> majorNumList,
                                                 String itemId,
                                                 String affiliateCompany,
                                                 Date startTime,
                                                 Date endTime,
                                                 Integer offset,
                                                 Integer limit
    ) throws Exception;


}
